package 框架学习.MyBatisPlus.乐观锁;

/**
 * 乐观锁
 */
public class index {
    /**
     * 锁：锁一般是用来解决并发问题的<p></p>
     * <p>
     * MP中的乐观锁：<p>
     * MP中的乐观锁，可以应对小型企业的并发问题（2000个请求以下）<p>
     * MP乐观锁步骤：<p>
     * 1、在数据库表中设置一个字段，用来标记当前谁在操作这条数据<p>
     * 2、在实体类中加一个属性，与乐观锁版本字段对应，并用注解<a href="">@Version</a>标记<p>
     * <p>
     * <p>
     * MP中乐观锁的实现：<p>
     * 假设我现在正在操作数据库表，执行一个更新操作，假设现在乐观锁版本字段默认为1<p>
     * <p>
     * update user set name='张三'     where version = 1;<p>
     * 这时候要是有另一个人也来操作这条记录，拿到的version依然为1，并没有起到作用<p>
     * 所以MP中是这样的：<p>
     * update user set name='张三', version = version + 1     where version = 1;<p>
     * 这样下一个人来操作时，拿到的锁就是2<p></p>
     * <p>
     * MP中这样的操作，需要通过拦截器来实现<p>
     * 也就是说，我们需要添加一个乐观锁拦截器<p>
     *
     * @param args
     */
    public static void main(String[] args) {

    }
}
